package cn.flying.cloud.auth.security.configuration;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 跨域配置
 *
 * @author: admin
 * @date: 2023年06月05日 19:08
 * @version: 1.0
 */
@Configuration
public class CorsConfig implements WebMvcConfigurer {

    /**
     * 跨域请求配置
     *
     * @param registry
     */
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        //允许所有的访问请求（访问路径）
        registry.addMapping("/**")
                //允许所有的请求方法访问该跨域资源服务器
                .allowedMethods("*")
                //允许所有的请求域名访问我们的跨域资源
                .allowedOrigins("*")
                //允许所有的请求header访问
                .allowedHeaders("*")
                // 允许携带 Cookie（关键配置）
                .allowCredentials(true)
                // 预检请求的缓存时间（减少重复预检）
                .maxAge(3600);
    }

}
